package EinkauferActionListener;

import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.sql.SQLException;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

import Bestellung.BestellKomponentenList;
import Bestellung.Bestellung;

public class HinzufuegenListener implements ActionListener {

	private Bestellung bestellung;
	
	
	public HinzufuegenListener(Bestellung bestellung) {
		
		this.bestellung = bestellung;
	}

	@Override
	public void actionPerformed(ActionEvent arg0) {
		
		//Pattern Textfield ID Feld
		Pattern pTextfieldId = Pattern.compile("[0-9]+");
		Matcher mTextfieldId = pTextfieldId.matcher(bestellung.getBestellungsID().getText());
		boolean bTextfieldId = mTextfieldId.matches();
		
		//Pattern Textfield Anzahl Feld
		Pattern pTextfieldAnzahl = Pattern.compile("[0-9]+");
		Matcher mTextfieldAnzahl = pTextfieldAnzahl.matcher(bestellung.getJTextField_anzahl().getText());
		boolean bTextfieldAnzahl = mTextfieldAnzahl.matches();
		
		
		
        if (bestellung.getBestellungsID().getText().equals("") || bestellung.getJTextField_anzahl().getText().equals("") ) {
            //User didn't type in a name...
                Toolkit.getDefaultToolkit().beep();
                //bestellung.getJButtonEntfernen().setEnabled(false);
                
                return;
            }else bestellung.getJButtonEntfernen().setEnabled(true);

        
        if(bTextfieldId == true && bTextfieldAnzahl == true){
		String idtext = bestellung.getBestellungsID().getText();
		String anzahltext = bestellung.getJTextField_anzahl().getText();
		int id = Integer.parseInt(idtext);
		int anzahl = Integer.parseInt(anzahltext);
		BestellKomponentenList bkl = new BestellKomponentenList(id, anzahl, bestellung.getBestellListModel(), bestellung.getConnection());
		
		try {
			bestellung.getJListBestellungen().setModel(bkl.getKonfiguration());
		} catch (SQLException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        }else{System.out.println("Fehler in der Eingabe!");}
	}

}
